package com.jews.example.demo.domain.user.service;

import com.jews.example.demo.domain.user.creator.UserCreator;
import com.jews.example.demo.domain.user.updater.UserUpdater;
import com.jews.example.demo.domain.user.vo.UserVO;

/**
 * @author JewsChen
 * @title: IUserService
 * @date 2022/11/29 23:05
 */
public interface IUserService {
    /**
     * create
     */
    Long createUser(UserCreator creator);

    /**
     * update
     */
    void updateUser(UserUpdater updater);

    /**
     * valid
     */
    void validUser(Long id);

    /**
     * invalid
     */
    void invalidUser(Long id);

    /**
     * findById
     */
    UserVO findById(Long id);

}
